package com.cooqe.entity;

import com.baomidou.mybatisplus.annotation.*;
import lombok.Data;

import java.util.Date;

/**
 * 资源采集器实例类
 *
 * @author yanxu
 * @date 2023/11/14 15:45
 */
@TableName("it_finder")
@Data
public class ItFinder {

    /**
     * 发现器在spring中注册的bean名称
     * 如：snmpFinderJob 、sshFinderJob ......
     */
    @TableId(value = "bean_id", type = IdType.ASSIGN_ID)
    private String beanId;

    /**
     * 实现类，需实现BaseFinder中方法
     * 如： com.cooqe.collection_snmp.snmpfinder.SnmpFinderJob
     *     com.cooqe.collection_ssh.sshfinder.SshFinderJob
     */
    @TableField("class_name")
    private String className;

    /**
     * 用户友好的名称
     */
    @TableField("name")
    private String name;

    /**
     * 发现资源时要求提供的参数
     */
    @TableField("params")
    private String params;

    /**
     * 状态
     */
    @TableField("status")
    private String status;

    /**
     * 采集job调度执行器
     */
    @TableField("job_handler")
    private String jobHandler;

    /**
     * 采集job需要的其它参数（资源id除外）
     */
    @TableField("job_param")
    private String jobParam;

    /**
     * 默认采集job调度定时，0 0/5 * * * ? 
     */
    @TableField("job_cron")
    private String jobCron;

    /**
     * 备注
     */
    @TableField("remark")
    private String remark;


    /**
     * 创建时间
     */
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;

    /**
     * 创建人
     */
    @TableField(value = "create_user", fill = FieldFill.INSERT)
    private Long createUser;

    /**
     * 更新时间
     */
    @TableField(value = "update_time", fill = FieldFill.UPDATE)
    private Date updateTime;

    /**
     * 更新人
     */
    @TableField(value = "update_user", fill = FieldFill.UPDATE)
    private Long updateUser;

}
